void f( long int x, char *p )
{
    int position = 0;  // 0表示个位，1表示百位,以此类推,之后还需要倒序
    char temp[MAXN] = ""; // 必须分配存储空间
    char *hexStr = "0123456789ABCDEF";
    while (position < MAXN - 1 && x)
    {
        temp[position] = hexStr[x % 16];
        x /= 16;
        position++;
    }
    temp[position] = '\0'; // 字符串结尾的空字符
    for (int i = 0; i < position; i++) // 倒序
    {
        p[i] = temp[position - i - 1];
    }
    p[position] = '\0';

}
